//
// Created by lfm on 2025/3/25.
//
//类对象做函数参数
//#include <iostream>
//#include <string>
//using namespace std;
//
////类模板对象
//template<class T1, class T2>
//class Person
//{
//public:
//    Person(T1 name, T2 age)
//    {
//        this->m_Name = name;
//        this->m_Age = age;
//    }
//    void ShowPerson()
//    {
//        cout << "name = " << this->m_Name << "年龄 :" << this->m_Age << endl;
//    }
//public:
//    string m_Name;
//    int m_Age;
//
//};
////1.指定传入类型
//void printPerson1(Person<string, int>&p)
//{
//    p.ShowPerson();
//}
//void test01()
//{
//    Person <string, int> p1("zhangsan", 132);
//    printPerson1(p1);
//}
////2.参数模板化
//template <class T1, class T2>
//void printPerson2(Person<T1, T2>& p)
//{
//    p.ShowPerson();
//    cout << "T1类型为 : " << typeid(T1).name() << endl;
//    cout << "T2类型为 : " << typeid(T2).name() << endl;
//}
//void test02()
//{
//    Person<string, int> p ("lisi", 90);
//    printPerson2(p);
//}
////3.整个类模板化
//int main()
//{
//    test02();
//    return 0;
//}
